<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <style>
    div, li, p {
      line-height: 40px
    }
    span {
      color: red
    }
  </style>
</head>
<body>
 <h2>web Workers</h2> 
 <p>
   长时间运行的 Javascript 进程会导致浏览器冻结用户界面，让人感觉到屏幕“冻结”了。Web Workers规范通过让 Javascript在后台运行解决了这个问题
 </p>
 <ul>
   <li>
     实现 web workers 对象就是传入 JS 文件名即可(worker 必须放在服务器上，本地访问不了)
   </li>
   <li>
     要给 worker传递信息，可以使用 postMessage(),worker 文件中通过 mesage 事件接收，保存在 event.data 中
   </li>
   <li>
     任何时候，调用 worker.terminate()就会停止 worker的工作
   </li>
   <li>
     <h3>worker 全局作用域</h3>
     <ul>
       <li>
         worker 的作用域完全在另一个作用域中，与当前网页代码不共享作用域。
       </li>
       <li>
         <span>worker</span>中的代码不能访问 DOM
       </li>
       <li>
         web Worker 中的全局对象是 worker 本身，也就是说，在这个特殊的全局作用域中，this 和 self 引用的都是 worker 对象。
       </li>
       <li>
         <span>worker 内部(worker.js)</span>，close()方法也可以停止工作，就像是在 <span>页面中调用了 terminate()一样</span>
       </li>
       <li>
         我们可以调用 importantScripts()方法加载其他脚本。
       </li>
     </ul>
   </li>
 </ul>
  <script src="./index.js"></script>
</body>
</html>